package io.gitee.zicai.stream.processor

import org.springframework.cloud.stream.annotation.Input
import org.springframework.cloud.stream.annotation.Output
import org.springframework.messaging.MessageChannel
import org.springframework.messaging.SubscribableChannel

/**
 * MsgProcessor
 * @author zicai
 * @since 2020-05-11
 */
interface MsgProcessor {

    companion object {
        const val INPUT: String = "msg-queue-input"
        const val OUTPUT: String = "msg-queue-output"
    }

    @Output(OUTPUT)
    fun output() : MessageChannel

    @Input(INPUT)
    fun input() : SubscribableChannel

}